package com.neu.cpsp.service;

import com.neu.cpsp.pojo.EvaluateRecord;
import com.neu.cpsp.pojo.EvaluateRecordCurrentQuarter;
import com.neu.cpsp.pojo.EvaluateRecordDetail;
import com.neu.cpsp.pojo.EvaluateRecordEntity;
import com.neu.cpsp.util.result.Result;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * @author neu.xiaojiacheng
 * @version 1.0
 * @date 2022/2/23 18:38
 */
public interface EvaluateRecordService {

    List<EvaluateRecord> selectEvaluateRecords(Integer year, Integer quarter);

    List<EvaluateRecord> selectEvaluateRecordsByDepart(List<String> idCardList);

    Result insertEvaluateRecord(EvaluateRecordDetail evaluateRecordDetail);

    int selectCurrMaxEvaluateRecordKey();

    List<EvaluateRecordCurrentQuarter> getSumProp(Integer year, Integer quarter);

    int deleteInfoById(Integer evaluateRecordId);

    EvaluateRecord selectRecordById(Integer evaluateRecordId);

    int updateByIdSelective(EvaluateRecordEntity evaluateRecordEntity);

    EvaluateRecordEntity checkTimes(Integer year, Integer quarter, String employeeIdCard,
                              String employeeDepart, Integer regulationTypeId, Integer regulationDetailId);
}
